//
//  LBAdaptiveThresholdFilter.h
//  OpenGLGame
//
//  Created by Nguyen Cong Huy on 11/28/12.
//  Copyright (c) 2012 UIT. All rights reserved.
//

#ifndef OpenGLGame_LBAdaptiveThresholdFilter_h
#define OpenGLGame_LBAdaptiveThresholdFilter_h

#include "LBFilter.h"

class LBGreyscaleFilter;
class LBBoxBlurFilter;
class LBTwoInputFilter;

class LBAdaptiveThresholdFilter : public LBFilter {
    float blurSize;
    LBGreyscaleFilter* luminanceFilter;
    LBGreyscaleFilter* localLuminanceFilter;
    LBBoxBlurFilter* boxBlurFilter;
    LBTwoInputFilter* adaptiveFilter;
    
public:
    LBAdaptiveThresholdFilter();
    ~LBAdaptiveThresholdFilter();
    void setBlurSize(float blurSize);
    virtual void setTexture(LBTexture* texture);
    void render();
};

#endif
